OpenStack Grizzly - Configure Swift#1 (Auth Node)
2013/08/23 |
Configure OpenStack Object Storage (Swift).
Swift consists 3 Nodes, it's Authentication Node, Proxy Node, Storage Node.
The example for Openstack of this site shows to configure All-in-One settings for Keystone, Glance, Cinder, Nova, Horizon, but on this Swift settings, configure a Node on another hosts like follows. (It uses Keystone Server as an Authentication Node) | +------------+ | +-----------+ | Auth Node |10.0.0.30 | 10.0.0.31| Proxy | | (Keystone) |------------+------------| Node | +------------+ | +-----------+ | +------------------------+-----------------------+ | | | |10.0.0.51 |10.0.0.52 |10.0.0.53 +-----------+ +-----------+ +-----------+ | Storage | | Storage | | Storage | | Node1 |------------| Node2 |-----------| Node3 | +-----------+ +-----------+ +-----------+ |
[1] | Add a user or endpoint for Swift on Keystone authentication Server. |
# add swift user [root@dlp ~(keystone)]# keystone user-create --tenant_id a8940116012e4a76af6ead65c7782917 --name swift --pass servicepassword --enabled true +----------+----------------------------------+ | Property | Value | +----------+----------------------------------+ | email | | | enabled | True | | id | 172c84298ddb4b65bea4abb296f5187f | | name | swift | | tenantId | a8940116012e4a76af6ead65c7782917 | +----------+----------------------------------+ # add swift user in admin role [root@dlp ~(keystone)]# keystone user-role-add --user-id 172c84298ddb4b65bea4abb296f5187f --tenant_id a8940116012e4a76af6ead65c7782917 --role-id da58f01851c4439a80e5789d8a5972cd
# add service entry for swift [root@dlp ~(keystone)]# keystone service-create --name=swift --type=object-store --description="Swift Service" +-------------+----------------------------------+ | Property | Value | +-------------+----------------------------------+ | description | Swift Service | | id | a2399f85f22a4c7184d11964cdb31195 | | name | swift | | type | object-store | +-------------+----------------------------------+ # define proxy node's IP address [root@dlp ~(keystone)]# export proxy_host=10.0.0.31
# add endpoint for swift [root@dlp ~(keystone)]# keystone endpoint-create --region RegionOne \ --service_id=a2399f85f22a4c7184d11964cdb31195 \ --publicurl="http://$proxy_host:8080/v1/AUTH_\$(tenant_id)s" \ --internalurl="http://$proxy_host:8080/v1/AUTH_\$(tenant_id)s" \ --adminurl="http://$proxy_host:8080/v1" +-------------+---------------------------------------------+ | Property | Value | +-------------+---------------------------------------------+ | adminurl | http://10.0.0.31:8080/v1 | | id | 6ee1894cd9b6479db47d389abb4913aa | | internalurl | http://10.0.0.31:8080/v1/AUTH_$(tenant_id)s | | publicurl | http://10.0.0.31:8080/v1/AUTH_$(tenant_id)s | | region | RegionOne | | service_id | a2399f85f22a4c7184d11964cdb31195 | +-------------+---------------------------------------------+ |